Grocery Lister Version 1.8 October 1991 by Randy Hoekstra Public Domain All Commercial Rights Reserved * Changes for version 1.8: - This version primarily fixes a bug which would not allow the total cost of the grocery list to exceed $99.99. A few other almost unnoticable cosmetic changes were also made. * Changes for version 1.7: - The Current Grocery List window has been changed so that the grocery list is now displayed in a single column with the entire grocery item visable. It is also possible to select this window and scroll through the grocery list using the window scroll arrows and slider bar. * Changes for version 1.6: - The Add, Edit, and Delete Grocery Item dialogs have been changed to conform more to the GEM standard. Now when entering a new item, use tab or return to move from the text field to the price field. - The Open and Save Grocery File functions have been rewritten and greatly sped up. As a result of this change, the disk file format of the grocery file has changed. Included in the archive is a conversion program (GLD_CONV) to convert your existing grocery file to the new format. * Changes for version 1.5: The primary features added with version 1.5 are command key equivalents, a sort grocery list command, and a 'jump to letter' in the grocery file function. Command key equivalents are shown in the menu to the right of the corresponding command. The sort grocery list command appears under the file menu and is described below. The 'jump to letter' feature allows you to press a key A through Z and jump to the position in the grocery file where grocery items beginning with that letter start. ---------------------------------------------------------------- Grocery Lister is a household utility program that allows you to compile a list of grocery items complete with current price and total estimated cost. The Grocery Lister can be used to determine approximately how much you will spend at the store if you know the items that you need. It can also be used as a budget tool to allow you to select the items you most need or want if you only have a fixed amount to spend. With a small amount of database maintenance work each time you buy groceries you will be able to maintain a fairly accurate file of the items which you regularly purchase. This file can be very usefull to remind you of items which you may need as you compile your grocery list. Finally, for those who have 'errand boys' do the shopping, the Grocery Lister will generate a very neat and easy to read printout of the current grocery list. To put Grocery Lister to work for you, simply run the program and use the simple menu commands as explained on the following pages. FILE ---- Open Grocery File ^O - Use this command to load a grocery -------------------- database file into memory. Once loaded the file may be used to select items for a current grocery list or it may be edited as desired. Grocery items can be add to a current grocery list by moving the mouse pointer over the desired item so that it is highlighted and pressing the left mouse button. To increase the quantity of a given item in the current grocery list, simply click the left mouse button on the highlighted item to add one to the current quantity shown. Click the right mouse button on the highlighted item to subtract one from the current quantity in the list. A maximum quantity of nine is allowed for any given grocery list item. Note: If a grocery list had been previously saved for the grocery file being loaded, then that list will also be loaded into memory. Save Grocery File ^S - Once changes have been made to a -------------------- grocery file in memory, use this command to save a copy of the updated grocery file on disk. If a grocery list existed on disk when the file was loaded, then it will be updated on disk when the file is saved. The grocery list will remain saved on disk until it is deleted as described under 'Delete Saved List'. Save Grocery List ^L - The current grocery list in memory -------------------- can be saved to disk with this command. Since the grocery file in memory and the current list in memory are dependant on each other, the grocery file in memory must be saved to disk before a grocery list can be saved to disk. If no changes are made to a grocery file after it is loaded into memory, then a current list may be saved to disk at any time. As noted above, when a list is saved on disk, it will automatically be loaded into memory when its grocery file is loaded. Grocery files and their grocery list must remain in the same disk directory. Delete Saved List - Once a grocery list has been saved ----------------- on disk, it can be deleted with this command. Again, the grocery file and grocery list are directly linked. If a grocery list exists on disk then it will load into memory with its grocery file and will also be updated on the disk if its grocery file is changed and saved to disk. Sort Grocery List ^R - After items have been added to the -------------------- grocery list, the list can be sorted in ascending alphabetical order with this command. Quit ^Q - Exit the program. A warning will be posted if ------- any changes have been made to the grocery file allowing you to quit anyway or cancel the command. EDIT ---- Add Grocery Item ^A - This command will bring up a small ------------------- edit window that will allow you to type in a new grocery item and its price. The item is put into the grocery file in alpabetical order. The item is not checked to see if it is already in the file so it is possible to have duplicate items. To enter the item, simply type in its name, return or tab over to the amount field, type in the price in the format shown on the input line, and press return. The item will be entered into the file and the input line will be cleared so that another entry can be made. When finished entering new items, press return on a blank input line to quit out of the edit window. Note: Once an item has been entered into the grocery file its name can not be changed. If an items name needs to be changed, it must be deleted from the file and then added back again. Edit Grocery Item ^E - This command is used to alter the -------------------- price of an existing grocery item. To change an items price, move the mouse pointer over the desired item so that it is highlighted and then select the Edit Grocery Item command. Be sure that the desired item remains highlighted when the command is selected. The item will be placed in the edit window with the cursor positioned at the amount input field. Enter the new price in the format shown on the input line and press return. The edit window will be closed and the new price will be updated in the grocery file. Delete Item ^D - Use this command to remove unwanted items -------------- from the grocery file. Position the mouse pointer over the item to be deleted and then select this command from the menu line. Be sure that the desired item remains highlighted when the command is selected. The item will be placed in the edit window and you will be asked to verify the delete operation. Type a 'Y' to confirm the delete or an 'N' to cancel the command. The left mouse button may also be pressed to confirm the delete and the right mouse button may be used to cancel the command. Clear All ^C - This command can be used to clear both the ------------ grocery file and grocery list out of current memory. If changes have been made to the grocery file or grocery list they will be lost. This command does not effect files saved on disk. Print ----- Print Grocery File - Use this command to print out the ------------------ current grocery file in memory. The file will be printed in continous form with no page breaks. Print Grocery List ^P- Use this command to print out the --------------------- current grocery list in memory. The list will be printed in continous form with no page breaks. The printout from this command can be used as a shopping list and to mark changes in prices while buying groceries. Grocery Lister may be freely distributed provided no changes are made to the program or the documentation. This user manual must be included with the program if it is to be placed in any public access medium. Please send bug reports and/or comments to: Randy Hoekstra 3414 Norwood Circle Richardson, Texas 75082